package com.power.sifa.approve.api;

import com.plf.common.domain.ResponseDTO;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;
import com.power.sifa.approve.model.Apl_arrive_receipt;
import com.power.sifa.approve.model.pageInfo.Apl_arrive_receiptPageInfo;
import javax.servlet.http.HttpServletResponse;
import javax.validation.constraints.NotBlank;
import java.io.IOException;

/**
 *  送达回执 Feign
 */
public interface IApl_arrive_receiptFeign {

    /**
     * 送达回执分页列表
     */
    @PostMapping("/apl_arrive_receipt/list")
    ResponseDTO list(@RequestBody Apl_arrive_receiptPageInfo apl_arrive_receiptPageInfo);

    /**
    * 查看送达回执
    */
    @GetMapping("/apl_arrive_receipt/view")
    ResponseDTO view(@RequestParam("id") String id);

    /**
    * 删除送达回执
    */
    @PostMapping("/apl_arrive_receipt/delete")
    ResponseDTO delete(@RequestParam("id") String id);

    ///**
    // * 查看送达回执 复合主键使用
    // */
    //@PostMapping("/apl_arrive_receipt/viewByPK")
    //ResponseDTO viewByPK(@RequestBody Apl_arrive_receipt.Apl_arrive_receiptPK pk);

    /**
     * 修改或保存送达回执
     */
    @PostMapping("/apl_arrive_receipt/save")
    ResponseDTO save(@RequestBody Apl_arrive_receipt  apl_arrive_receipt);

    ///**
    // * 删除送达回执 复合主键使用
    // */
    //@PostMapping("/apl_arrive_receipt/deleteByPK")
    //ResponseDTO deleteByPK(@RequestBody Apl_arrive_receipt.Apl_arrive_receiptPK pk);

    /**
     * 批量删除送达回执
     */
    @PostMapping("/apl_arrive_receipt/batchDel")
    ResponseDTO batchDel(@RequestParam("ids") String ids);

     /**
     * 导出excel
     */
    @PostMapping("/apl_arrive_receipt/output")
    void output(HttpServletResponse response, @RequestBody Apl_arrive_receiptPageInfo apl_arrive_receiptPageInfo);

     /**
     * 导出excel模板
     */
    @PostMapping("/apl_arrive_receipt/exportExcelTemplate")
    void exportExcelTemplate(HttpServletResponse response);

     /**
     *	导入excel
     */
    @PostMapping("/apl_arrive_receipt/importExcel")
    ResponseDTO importExcel(@RequestBody MultipartFile file) throws IOException ;

    /**
     * 确认送达回执
     * @param code 案号
     * @param verifycode 验证码
     * @return
     */
    @PostMapping("/apl_arrive_receipt/confirmReceipt")
    ResponseDTO confirmReceipt(@RequestParam @NotBlank(message = "案件号不能为空") String code,
                               @RequestParam @NotBlank(message = "验证码不能为空") String verifycode);


    /**
     * 查询送达回执数据
     * @param recordId 送达详情id
     * @return
     */
    @PostMapping("/apl_arrive_receipt/getReceiptById")
    ResponseDTO getReceiptById(@RequestParam String recordId);

}
